Data management system storing file in designated folder

ABSTRACT

A file storage system that allows the user to easily designate a desired location to store a file is configured as follows. In response to a tree structure request mail from a client, a server creates a tree structure for a folder that can be accessed by the user, and describes it in a mail for reply. The user receives the mail with the description of the tree structure, designates a storage location in the form of a reply thereto, and sends a mail with an attached file to be stored to the server. Upon receiving this mail, the server stores the attached file in the designated storage location.

[0001] This application is based on Japanese Patent Application No.2002-259047 filed with Japan Patent Office on Sep. 4, 2002, the entirecontent of which is hereby incorporated by reference.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The present invention relates to a data management system and adata management program, and more particularly to a data managementsystem and a data management program capable of storing a file in astorage location designated by a client.

[0004] 2. Description of the Related Art

[0005] Conventionally, in a network environment, data is uploaded from aclient to a server (including a document management device, a filemanagement device, a data management device, and the like).

[0006] Data is typically uploaded to a server via a client application.This is because a client application allows the user to easily carry outan operation of designating path information of an upload destination.

[0007] If the upload destination can be designated easily using ane-mail, it becomes unnecessary to activate a client application only foruploading.

[0008] In conventional techniques, however, it takes much time and theeffort for the user to designate a desired location into which a file isstored. In addition, the user does not know what folder exists in whatstructure in a server, so that the user cannot designate the destinationto which a file is uploaded.

SUMMARY OF THE INVENTION

[0009] The present invention is made to solve the aforementionedproblems. An object of the present invention is to provide a datamanagement system and a data management program product allowing theuser to designate a desired location in which a file is stored.

[0010] In order to achieve the aforementioned object, in accordance withan aspect of the present invention, a data management system includes: afirst transmission portion sending a mail from a client to a server forinquiring its folder structure; a second transmission portion, at theserver, transmitting its folder structure to the client by mail inresponse to the inquiry mail sent from the client; a third transmissionportion, at the client, designating a storage folder in the form of areply to the mail sent from the server and sending a mail to the serverwith an attached file; and a storage portion, at the server, storing theattached file in the storage folder as designated, in response to themail sent from the client.

[0011] In accordance with another aspect of the present invention, adata management program product causes a computer to execute: a firststep of sending its folder structure to a client by mail in response toan inquiry mail sent from the client; and a second step of storing anattached file in a designated storage folder when a mail is receivedfrom the client with an attached file and with a designation of astorage folder in the form of a reply to the mail sent at the firststep.

[0012] In accordance with still another aspect of the present invention,a data management server includes: a transmission portion sending itsfolder structure to a client by mail in response to an inquiry mail sentfrom the client; and a storage portion storing an attached file into adesignated storage folder when a mail is received from the client withan attached file and with a designation of a storage folder in the formof a reply to the mail sent by the transmission portion.

[0013] The foregoing and other objects, features, aspects and advantagesof the present invention will become more apparent from the followingdetailed description of the present invention when taken in conjunctionwith the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0014]FIG. 1 is a diagram showing a configuration of a shared documentmanagement system in accordance with an embodiment of the presentinvention.

[0015]FIG. 2 is a diagram showing another configuration of the shareddocument management system.

[0016]FIG. 3 is a block diagram showing a hardware structure of one ofpersonal computers or a server.

[0017]FIG. 4 is a block diagram showing a configuration of MFP.

[0018]FIG. 5 illustrates file upload processing between a personalcomputer 100 a and a server 200.

[0019]FIG. 6 is a diagram showing a specific example of a tree structureof files in a server.

[0020]FIG. 7 shows a mail body where a password is mismatched.

[0021]FIG. 8 illustrates a mail body describing a tree structure.

[0022]FIG. 9 illustrates a specific example of a mail body where onefile is stored in one folder.

[0023]FIG. 10 illustrates a specific example of a mail body where onefile is stored in a plurality of folders.

[0024]FIG. 11 illustrates a specific example of a mail body where aplurality of files are stored in one folder.

[0025]FIG. 12 illustrates a specific example of a mail body where aplurality of files are stored in a plurality of folders.

[0026]FIG. 13 illustrates a specific example of a mail body where aplurality of files are stored in a plurality of folders.

[0027]FIG. 14 illustrates a body text of a notification mail whereprocessing results in an error.

[0028]FIG. 15 illustrates a specific example of a body text of aprocessing result notification mail where attached files storingprocessing ends normally.

[0029]FIG. 16 illustrates a specific example of user registrationinformation.

[0030]FIG. 17 is a flow chart illustrating processing at the server fora tree structure request mail.

[0031]FIG. 18 is a flow chart illustrating processing at the serverwhere an upload request mail is sent.

[0032]FIG. 19 is a flow chart illustrating the content of userauthentication processing (S305) in FIG. 18.

[0033]FIG. 20 is a flow chart illustrating the content of storagelocation analysis processing (S315) in FIG. 18.

[0034]FIG. 21 is a flow chart continued from FIG. 20.

[0035]FIG. 22 is a flow chart illustrating the process of folder pathanalysis processing (S529, S549, S557) in FIG. 21.

[0036]FIG. 23 illustrates a part of the content of HTML mail describinga tree structure.

[0037]FIG. 24 illustrates a specific example of a mail returned by theuser.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0038] Referring to FIG. 1, a shared document management system hashardware configured with an MFP (Multi Function Peripherals) 300connected to an LAN, personal computers (PC) 100 a, 100 b, serving asclients, a rooter 400 for connecting to the Internet, and a server 200.

[0039] A hard disk drive (HDD) 231 is connected to (or contained in) MFP300, and image data read by a scanner in MFP 300 is once accumulated inhard disk drive 231.

[0040] A plurality of user boxes (folders) are provided for each user inhard disk drive 231 in advance. The user designates his/her user box andstores the read image data therein. The user can operate his/herpersonal computer to retrieve the image data from his/her user box andto transfer it into a folder at his/her personal computer or at theserver.

[0041] The user can also designate an e-mail account or address to senddata to the destination corresponding thereto (which may be a deviceconnected within LAN or may be a device connected over a network such asthe Internet) in the form of an e-mail.

[0042] It is noted that although FIG. 1 shows that only one FP 300 isconnected to the network by way of example, a plurality of MFP 300 maybe connected to the network. Similarly, a plurality of servers 200 maybe connected to the network. Each device on the network is assignedrespective unique identification information (ID information) to allowthe device to be identified over the network.

[0043] In the shared document management system in the presentembodiment, a file can be uploaded from a device connected to thenetwork to another device using an e-mail.

[0044] The software of the shared document management system (a shareddocument management program which is an example of a data managementprogram) is installed on server 200. The user operates his/her personalcomputers 100 a, 100 b as clients to access the software of the shareddocument management system on server 200. The user can also print-out orscan-in a file using MFP 300.

[0045] The software of the shared document management system carries outthe processing shown in the flow charts as illustrated later.

[0046] Main communications between devices are illustrated in thefollowing (A)-(D)).

[0047] (A) A file stored in the user's personal computers 100 a, 100 bas clients is uploaded to server 200.

[0048] (B) A file stored in server 200 is displayed on or is downloadedto personal computers 100 a, 100 b.

[0049] (C) A file stored in server 200 is printed at MFP 300.

[0050] (D) A file obtained by scanning at MFP 300 is stored in server200.

[0051] The description of the following embodiment will mainlyillustrate a case where a file stored in user's personal computers 100a, 100 b is uploaded to server 200. The present invention, however, isnot limited thereto and may be applied to a case where a file istransmitted from one device being connected to another device and isstored in another device.

[0052] As shown in FIG. 2, the present invention can be applied to asystem configured such that servers 200 a, 200 b, personal computers 100a, 100 b, and MFP 300 are connected via a communication line such as theInternet I, and data such as a document is communicated between thosedevices using e-mails.

[0053]FIG. 3 is a block diagram showing a hardware structure of one ofthe personal computers or a server.

[0054] Referring to FIG. 3, a personal computer or a server includes aCPU 301 controlling the entire device, a display unit 303, an LAN card305 for connection to LAN, an input unit 307 formed of a keyboard, amouse, and the like, a flexible disk drive 309, a CD-ROM drive 311, ahard disk drive 313, an ROM 315, and an RAM 317.

[0055] Flexible disk drive 309 can be used to read image data or aprogram recorded on a flexible disk (F1), and CD-ROM drive 311 can beused to read image data or a program recorded on a CD-ROM (C1).

[0056]FIG. 4 is a block diagram showing a hardware structure of MFP 300.MFP 300 includes a CPU 20 performing a variety of operation processingin addition to control of the entire operation of MFP 300. CPU 20 isconnected to an RAM 21 storing a variety of data and to an ROM 22storing a program 221. CPU 20 is also connected to an operation unit 11,a display 12, a scanner unit 13, and a storage unit 23. Storage unit 23is configured with a hard disk 231 storing image data and the like, anda card slot 232 for reading information from a memory card 91. It isnoted that RAM 21 is a non-volatile memory.

[0057] A variety of data can thus be communicated between RAM 21,scanner unit 13, hard disk 231, and memory card 91 installed in cardslot 232, under the control of CPU 20. Information stored in RAM 21,hard disk 231, and memory card 91 is presented on display 12 under thecontrol of CPU 20.

[0058] CPU 20 is further connected to a communication unit 16 includinga transmission unit 161 and a reception unit 162 forreceiving/transmitting data from/to an external device connected overthe network.

[0059]FIG. 5 illustrates processing of uploading a file from personalcomputer 100 a to a predetermined folder at server 200. First, at stepS101, user registration is performed on server 200 by an administrator.

[0060] At step S103, a mail for requesting a tree structure is sent frompersonal computer 100 a to server 200. In response to reception of thetree structure request mail, server 200 specifies the user who has sentthe mail by the sender mail address, at step S105.

[0061] Next, at step S107, server 200 searches for a folder withinserver 200 that can be accessed by the specified user, and creates datarepresentative of the tree structure for that folder.

[0062] At step S109, a mail in which the tree structure is described issent from server 200 to personal computer 100 a.

[0063] The user recognizes the tree structure described in the mail, andsends a mail to server 200 by attaching a file to be stored andspecifying a storage folder in the form of a reply to the mail, at stepS111.

[0064] At step S113, server 200 stores the attached file in the storagefolder as designated, in response to the mail sent from personalcomputer 100 a.

[0065] At step S115, a mail indicating the result of store processing issent from server 200 to personal computer 100 a.

[0066]FIG. 6 is a diagram showing a specific example of a tree structureof folders in the server.

[0067] In the present embodiment, all the files managed by the shareddocument management system are stored in folders. A folder may also bestored in another folder. As a result, a tree structure formed offolders and files is constructed in the system as shown in FIG. 6.

[0068] Referring to FIG. 6, in this specific example, a folder A and afolder B as well as a file C are stored in a Root folder, and a folderAA is stored in folder A. A file AAA is stored in folder AA.

[0069] A file BA and a file BB are stored in folder B.

[0070] Advantageously, files can be managed systematically when managedin this way. In addition, any given folder can be kept secret from anygiven user group.

[0071] Although all the folders are made public to all the groups in theinitial setting, the users belonging to a designated group cannot accessa designated folder if the administrator keeps it secret.

[0072] The system administrator has to set the group to which the useris to belong, when the user registers himself. Therefore, groups must beregistered before the user registration.

[0073] After the group registration, the user registration is performedby setting the following four items of information.

[0074] User ID

[0075] Password

[0076] Group name to which the user belongs

[0077] Mail address

[0078] The system permits the user having this information registered inthe system to perform the operation on the managed files.

[0079] In the following, the procedure for the user to operate thepersonal computer to upload a file to server 200 will be described in(1)-(6) in the order.

[0080] (1) Send a Tree Structure Request Mail

[0081] When the user uploads a file to the shared document managementsystem in the present embodiment, the first required procedure is toknow the tree structure of folders constructed within the system inorder to designate an upload destination. The user first sends thefollowing mail to the system (this corresponds to step S103 in FIG. 5):

[0082] Subject: Request Tree

[0083] Body Text: ****** (a password set in the user registration). Whenthe system receives this mail, the folder tree structure is created atthat time using the method described later.

[0084] (2) Specify the User by the Mail Address

[0085] When the system receives the mail, the system first recognizesthat the subject is “Request Tree” and extracts the sending address ofthe received mail. Then, it refers to the registered user informationand specifies the sender of the received mail (this corresponds to stepS105 in FIG. 5). It further verifies the password entered by the senderin the body text, and if this matches that registered in the userregistration information, the user is considered to have logged-in. Ifnot, the processing ends by returning to the sender a mail including atext that “the password is incorrect” as shown in FIG. 7.

[0086] (3) Create a Tree Structure for the Folders that can be Accessedby the User

[0087] If the password entered by the user in the mail body matches thepassword of that user in the user registration information that isregistered in the shared document management system in advance, thesystem extracts the group including the user from the user registrationinformation. It then searches for the folder that can be accessed bythis group, and creates a tree structure for the hit folders in textformat (this corresponds to step S107 in FIG. 5).

[0088] (4) Send a Mail Describing a Tree Structure

[0089] Upon creation of the tree structure in text representation, theshared document management system describes it in the mail body to bereturned to the sender. When the tree structure shown in FIG. 6 isconstructed in the shared document management system, for example, themail shown in FIG. 8 is created and returned to the sender (thiscorresponds to step S109 in FIG. 5).

[0090] Referring to FIG. 8, the subject of the mail here is “A Tree inthis system”, and the body text includes a character string with acomment “the following line should always be included in the replymail”. The character string in the second line in the mail bodyrepresents encrypted log-in information of the user. This characterstring is included in the reply so that the shared document managementsystem can be informed that the user is logging in. This can preventevil users from using the mail address of the user accessible to theshared document management system thereby to endanger the system.

[0091] After the third line of the body text of the mail in FIG. 8, itis shown in text format that folder A and folder B are present in theRoot folder and folder AA is included in folder A. It is assumed thatthe user receiving this mail is not limited in access and can upload afile to all the folder in FIG. 6.

[0092] (5) Send an e-mail by Attaching a File to be Uploaded andSpecifying a Storage Location

[0093] The user can store an attached file in the shared documentmanagement system by attaching a file to be uploaded to the mail withthe description of the tree structure and returning the mail (thiscorresponds to step S111 in FIG. 5). The storage location is designatedby modifying the description of the tree structure sent from the system.

[0094] (5-1) To Store One File in One Folder

[0095] Assume that the user stores file X in folder AA, by way ofexample. Here, the user quotes the mail received from the shareddocument management system to create the reply mail as shown in FIG. 9.At the head of the line in the quoted portion, a symbol depending on themailer (here “>”) is inserted. This symbol is processed to be ignored atthe system side. Here, the subject is “Upload” and the user attachesfile X to this mail. The user then inserts a blank line below the lineof folder AA.

[0096] The mail as shown in FIG. 9 is sent to the server of the shareddocument management system to cause the system to store file X in folderAA.

[0097] (5-2) To Store One File in a Plurality of Folders

[0098] Assume that the user stores file X in folder AA and folder B, byway of example. The process of creating a reply mail is the same as(5-1) as described above except the process of designating storagelocations. The storage locations can be designated by insertingrespective blank lines below the lines of folder AA and folder B asshown in FIG. 10. In other words, the mail as shown in FIG. 10 is sentto the shared document management system to cause the system to storefile X in folder AA and folder B.

[0099] (5-3) To Store a Plurality of Files in One Folder

[0100] Assume that the user stores file X and file Y in folder AA, byway of example. The process of creating a reply mail is similar as (5-1)described above. The user inserts a blank line below the line of folderAA and attaches file X and file Y. In other words, the mail as shown inFIG. 11 is sent to the shared document management system to cause thesystem to store file X and file Y in folder AA.

[0101] (5-4) To Store a Plurality of Files into a Plurality of Folders(1)

[0102] Here, it will be described that files to be upload are storedinto respective folders. It is assumed that the user stores file X infolder B, and file Y and file Z in folder AA, by way of example. Theprocess of creating a reply mail is similar as (5-1) described aboveexcept the process of designating a storage location.

[0103] As shown in FIG. 12, the user attaches the files to the mail inthe order of file Y, file Z and file X. The storage locations aredesignated by inserting two blank lines below the folder AA line and oneblank line below the folder B line. In other words, the mail as shown inFIG. 12 is sent to the shared document management system to cause thesystem to store file Y and file Z in folder AA and file X in folder B.By matching the total number of blank lines with the total number ofattached files, the system can know which attached file should be storedinto which folder.

[0104] (5-5) To Store a Plurality of Files in a Plurality of Folders (2)

[0105] Here, it will be described that a part or all of files to beuploaded are stored in a plurality of folders. It is assumed that theuser stores file X in folder AA and folder B, file Y in folder A, andfile Z in the Root folder and folder AA, by way of example.

[0106] The process of creating a reply mail is similar as (5-1)described above except the process of designating a storage location.

[0107] First, as shown in FIG. 13, the user attaches the files to themail in the order of file X, file Y, and file Z. The system therebyrecognizes file X as “1”, file Y as “2”, and file Z as “3”. To designatethe storage locations, the user enters “3” in the line below the Rootfolder, “2” in the line below folder A, “1, 3” in the line below folderAA, and “1” in the line below folder B. In other words, the mail asshown in FIG. 13 is sent to the shared document management system tocause the system to store file Z in the Root folder, file Y in folder A,file X and file Z in folder AA, and file X in folder B.

[0108] It is noted that the process of (5-5) can be applied to the caseswhere one file is stored in one folder, one file is stored in aplurality of folders, a plurality of files are stored in one folder, anda plurality of files are stored in a plurality of folders, as stated in(5-1)-(5-4).

[0109] (6) Send a Processing Result Notification Mail

[0110] If the attached file storing processing does not end normally,the shared document management system describes and transmits an errormessage created during the processing in the mail. If the processingends normally, the system describes and sends the name of the storedfile and the storage folder path in a mail. It follows that the user haslogged out (this corresponds to step S115 in FIG. 5).

[0111]FIG. 14 illustrates a specific example of a mail sent from theserver to the client where the attached file storing processing does notend normally (where the analysis of the folder path has failed).

[0112] The user receiving the mail shown in FIG. 14 can realize that thefolder designated as a storage location is not present or deleted.

[0113]FIG. 15 illustrates a content of a mail sent from the server tothe client where the attached file storing processing ends normally(this corresponds to the example of (5-5) described above).

[0114] As shown, the user is informed of the location in which the fileis stored.

[0115]FIG. 16 illustrates a specific example of the user registrationinformation registered in the server.

[0116] Referring to FIG. 16, a user address, a user name, a group, anaccess right, and a password are registered for each user in order tomanage user's information.

[0117] It is noted that in the system of the present embodiment it isnecessary to prohibit the following items so as to perform the aboveprocessing properly:

[0118] To create a folder named “Root folder” in the shared documentmanagement system

[0119] To use a plus sign or a vertical line symbol in a folder name,which are characters to describe a tree structure

[0120] To use a space, a plus sign, or a vertical line symbol in theencrypted user log-in information (a space is prohibited to avoid theappearance of character string “Root folder”).

[0121]FIG. 17 is a flow chart illustrating the detailed processing atthe server at steps S103-S109 in FIG. 5.

[0122] Referring to FIG. 17, when the shared document management systemreceives a mail at step S201, it is determined whether the subject ofthe mail is “Request Tree” at step S203. If NO, the processing will end,and if YES, the sending address of the received mail is extracted atstep S205.

[0123] At step S207, the user who has sent the mail is specified withreference to the user registration information shown in FIG. 16.

[0124] At step S209, it is determined whether the content of the mailbody matches the password in the user information. If NO, a mail is sentto the user indicating that the password is incorrect, at step S219.

[0125] If YES at step S209, the group to which the user belongs isspecified at step S211, and a search is conducted for the folder thatcan be accessed by that group.

[0126] Then, at step S215, the tree structure for folder hit in thesearch is represented in text, and at step S217, the user log-ininformation is attached to the mail and transmitted.

[0127]FIG. 18 is a flow chart illustrating the processing at stepsS111-S115 in FIG. 5. In this flow chart, when a mail with a subject“Upload” is received from the user, user authentication is performed andthereafter whether a file is attached or not is checked. If there is noattached file, an error message is sent by mail. If there is an attachedfile, the storage location is analyzed from the mail body, and if theanalysis is successful, the attached file is stored in the designatedstorage location. On the other hand, if the analysis fails, an errormessage created during the analysis is sent by mail.

[0128] More specifically, referring to FIG. 18, when the shared documentmanagement system has received a mail at step S301, it is determinedwhether the subject is “Upload” at step S303. If NO, the processing hereends, and if YES, user authentication processing is performed (whichwill be described in detail later) at step S305.

[0129] At step S307, it is determined whether the user authentication issuccessful or not, and if NO, a mail with the content “the userauthentication fails” is sent to the user at step S309.

[0130] If the user authentication is successful, it is determined atstep S311 whether there are one or more attached files. If NO, a mailwith the content “please attach a file to be uploaded” is sent to theuser at step S325.

[0131] If there are one or more attached files, a variable N indicativeof the number of the attached file to be processed is replaced with 1 atstep S313. Then, at step S315, the processing of analyzing a filestorage location (which will be described in detail later) is performed,and at step S317, it is determined whether an error message is createdor not.

[0132] If an error message is created, a mail with an error messagedescribed is sent to the user at step S327. On the other hand, if noerror message is created, the N-th attached file as indicated byvariable N is stored in the storage location as analyzed.

[0133] At step S321, it is determined whether the (N+1)th attached fileexists, and if YES, 1 is added to N and the processing from step S315 isrepeated.

[0134] If NO at step S321, a mail with the content “file storage endsnormally” is sent to the user at step S329.

[0135]FIG. 19 is a flow chart illustrating the user authenticationprocessing performed at step S305 in FIG. 18. Referring to FIG. 19, theuser is identified by the mail address, and the log-in information isextracted at step S401.

[0136] At step S403, it is determined whether the user has alreadylogged in, and if NO, it is determined that the user authenticationfails at step S405, and the process returns to the main routine.

[0137] If the user has already logged in at step S403, the mail bodytext is searched for the character string of encrypted log-ininformation at step S407. If the character string is found (YES at stepS409), it is determined that the user authentication is successful atstep S411, and the process returns to the main routine to proceed to thestorage location analysis processing.

[0138] If the extraction of log-in information fails or if the encryptedcharacter string cannot be found (NO at step S409), the process proceedsto step S405 where it is determined that the user authentication fails.

[0139]FIG. 20 is a flow chart illustrating the storage locationanalyzing processing (S315) in FIG. 18, and FIG. 21 is a flow chartcontinued from FIG. 20.

[0140] The processing in the flow charts shown in FIGS. 20 and 21 willbe schematically described. First, in order to recognize a tree range inthe mail body, the character string “Root folder” that should be on thetop of the tree is located. If the storage location is designatednormally, this character string always appears only once in the mailbody; otherwise an error message is created.

[0141] Since the tree range in the mail is described in the text that iscreated by the shared document management system and is then returned bythe user, it likely includes a quote symbol (for example “>”) at a linehead. The quote symbol is deleted preliminarily, so that the sameanalysis processing can be performed on any quote symbol. The characterstring “Root folder” that has been located is described at the line headby the shared document management system during the creation of thetree. Therefore, any possible character string before it may beconsidered as a quote symbol. If there is a character string before“Root folder”, it is regarded as a quote symbol, and if the samecharacter string appears on another line head, it is deleted.

[0142] The shared document management system then searches the mail fora vertical line symbol in order to extract the end of the tree range inthe mail body. Since this symbol always exists at the end, the detectedvertical line symbol at the bottom is determined as the end of the treerange.

[0143] After the recognition of the tree range, if there is one attachedfile, a folder path corresponding to the blank line position within thetree range is specified and the attached file is stored there. If thereare plurality of blank lines, the attached file is stored in all thecorresponding folder paths. However, the storage location may bedesignated by providing the number representative of the attaching orderas described in (5-5), rather than by a blank line. Therefore, if thereis no blank line, the tree range is searched for the character of “1”.The attached file is then stored in all the folder paths correspondingto the hit lines.

[0144] If there are a plurality of attached files, the number ofattached files is compared with the number of blank lines, and if theyare equal, the file with the attaching order of 1 is stored in thefolder path corresponding to the blank line positioned on the top. Then,“*” is entered in the blank line on the top to remove that blank line.

[0145] If there are a plurality of attached files and there is no blankline, it is assumed that the storage location is designated by providingthe number representative of the attaching order. In this case, a searchis conducted for a number representative of the attaching order of theattached file to be stored at present. The attached file is then storedin the folder path corresponding to the hit line.

[0146] After the attached file is stored, the storage location analysisprocessing exits once. However, in order to store the next attachedfile, the storage location analysis processing is performed again. Afterthe second analysis processing, the processing of recognizing the treerange is omitted to begin with the blank line search. If there is ablank line, the attached file is stored in the folder path correspondingto the blank line positioned on the top. If there is no blank line, asearch is conducted for a number representative of the attaching orderof the attached file to be stored at present, and the attached file isstored in the folder path corresponding to the position of the linedescribing the number. This is repeatedly performed until all theattached files are stored.

[0147] If the number of attached files is more than one and the numberof blank lines is not 0, and if they are not equal, an error message isoutput.

[0148] Referring to FIG. 20, in the storage location analysisprocessing, it is determined whether variable N is “1” at step S501. IfYES, the mail body is searched for the character string “Root folder” atstep S503. At step S505, it is determined whether the number of thesearch hits is 1, and if NO, an error message “the character string“Root folder” should appear once in the body text” is created at stepS507. Thereafter the process returns to the main routine.

[0149] If YES at step S505, it is determined whether there is acharacter string before the hit line “Root folder” at step S509. If YES,the body text is searched for all such character strings, and thesymbols at the line heads are deleted at step 517. The quote symbols arethus deleted.

[0150] At step S511, the mail body text is searched for a vertical linesymbol. If the number of hits is 0 at step S513, an error message “novertical line symbol is found” is created at step S515, and the processreturns to the main routine.

[0151] If the number of hits is not 0 at step S513, the computer iscaused recognize the tree range from the line of the character string“Root folder” to the line of the last hit vertical line symbol.

[0152] At step S521, the tree range is searched for a blank line and thenumber of hits is substituted for M. Thereafter, the total number ofattached files is substituted for variable F at step S523.

[0153] Then, at step S525, it is determined whether F=1, and if YES, itis determined whether M=0 at step S527.

[0154] If NO at step S527, the folder path analysis processing (FIG. 22)corresponding to all the blank line positions is performed at step S529.If the analysis is successful at step S531, the process returns to themain routine. If the analysis fails, an error message “a location tostore the attached file cannot be specified” is created at step S533,and the process returns to the main routine.

[0155] If YES at step S527, the tree range is searched for the numericalvalue “N” at step S541, and the search results are narrowed to thoseincluding vertical line symbols at the line heads at step S543.

[0156] It is determined whether the number of hits is 0 at step S545,and if NO, the folder path analysis processing is performed for all thehit positions at step S557, followed by step S531.

[0157] If YES at step S545, an error message “there is a file whosestorage location is not designated” is created at step S547, and theprocess returns to the main routine.

[0158] If it is determined that F≠1 at step S525, it is determinedwhether M=1 at step S537. If YES, the folder path analysis processingcorresponding to the blank line position is performed at step S549,followed by step S531.

[0159] If NO at step S537, it is determined whether M=0 at step 539, andif YES, step S541 will follow. If NO, it is determined whether M=F atstep S551. Here, if YES, the blank line position is stored at step S555,and “*” is entered in that line. Step S549 then follows.

[0160] On the other hand, if NO at step S551, an error message “thenumber of attached files does not match the number of blank lines” iscreated at step S553, and the process returns to the main routine.

[0161] If NO at step S501, it is determined whether there is a blankline in the tree range at step S535. If YES, step S537 will follow, andif NO, step S541 will follow.

[0162]FIG. 22 is a flow chart illustrating the folder path analysisprocessing performed at step S529, S549 or S557 in FIG. 21. Referring toFIG. 22, this processing is always invoked from the flow chart of FIG.21, and in any case, a line within the tree range is passed as anargument. The folder path is created by tracing from “the currentfolder” to the parent folder. The name of the folder corresponding to“the current folder” is described after “+” which is one line above theline passed as an argument. It is noted that the line one level abovemay be only “*” in some cases, and it is then ignored.

[0163] Variable P is replaced with the character string after “+”, andvariable L is replaced with the ordinal position of character “+” inthis line. The number applied to L represents the level on which thefolder exists starting from “Root folder”. If L is 1, that folder ispositioned immediately below “Root folder”.

[0164] If L is 2 or more, 1 is subtracted from L, and a search isconducted in the upward direction for the line having “+” in the L-thcharacter. Then, the character string after “+” and “\” representativeof the boundary between the folder names are added to the head of P.

[0165] This is repeated until L becomes 1, thereby resulting in a folderpath for P. A search is conducted for a folder corresponding to P, andif it is found, the processing is completed. If it is not found, anerror message is output.

[0166] It is noted that if the file storage location is immediatelybelow the Root folder, the analysis processing in FIG. 22 is unnecessaryand thus not performed.

[0167] In the following, referring to the flow chart, the folder pathanalysis processing will be described in more detail. Referring to FIG.22, at step S601, a search for “+” is conducted from the line one levelabove the designated one (the line only with “*” is ignored).

[0168] At step S603, it is determined whether “+” is missing, and ifYES, an error message “the designation of the storage location is notcorrect” is created at step S605, and the process returns to the mainroutine.

[0169] If NO at step S603, P is replaced with the character string after“+” at step S607. Thereafter, at step S609, the ordinal position ofcharacter “+” in the current line is counted and is then substituted forL.

[0170] It is determined whether L=1 at step S611, and if NO, 1 issubtracted from the value of L at step S619. At step S621, a search isconducted in the upward direction starting from the current line to finda line having “+” in the L-th character, and the character string after“+” in the first hit line and “\” are added to the head of P. Theprocess returns to S601.

[0171] If YES at step S611, character string P is determined as thefolder path at step S613, and it is used as a key to carry out a search.

[0172] At step S615, it is determined whether a folder corresponding toP is found, and if YES, the process returns to the main routine. If NO,an error message “the folder specified as the storage location does notexist or is deleted” is created at step S617, and the process returns tothe main routine.

[0173] As described above, in the present embodiment, the server sendsits folder structure to the client in response to the inquiry mail sentfrom the client. At the client, simply, the file storage folder isdesignated in the form of a reply to the mail and a mail is sent withthe attached file to the server, so that the attached file is stored inthe folder designated as the storage location. Therefore, it is possibleto store a file in a desired location easily using software for sendinga mail.

[0174] Although in the embodiment above, a file storage location isdesignated by inserting a blank line or the like in a mail, a file maybe stored by designating a desired storage location with a mark (forexample an arrow symbol or the like). Furthermore, although the numberssuch as “1”, “2”, and the like are used to store a plurality of files, afile name may be described directly, or a file can be specified with asymbol such as alphabets or Katakana (Japanese phonetic alphabets),instead.

[0175] The type of stored files is not limited to a document, and thepresent invention is applicable to storage of all kinds of dataincluding image, sound, music, graphics, and the like.

[0176] [Another Embodiment]

[0177] In the embodiment above, the folder structure of the server ispassed to the user in text form. Alternatively, the folder structure canbe passed to the client in HTML format. In this case, the user candesignate the file storage location by clicking the storage folder.

[0178] More specifically, the shared document management system inaccordance with the present embodiment converts the tree structure ascreated in text representation to HTML file and provides a link to eachfolder name as shown in FIG. 23. This HTML file is attached to a mail oris sent to the user as an HTML mail.

[0179] The user receives the HTML mail describing the tree structurefrom the server and clicks the link provided for the storage foldername. The mailer is then activated to describe a subject and a body textautomatically, as shown in FIG. 24. The user can store a file at theserver by attaching the file to be stored to this mail and returning itto the server. The character string described in the body text of themail shown in FIG. 24 is the encrypted log-in information and storagefolder name.

[0180] The server analyzes the mail body text, and if it finds thelog-in information correct and can specify the storage folder name, itstores all the attached files in that folder. On the contrary, if thelog-in information is incorrect or the storage folder name cannot bespecified, the user is informed about that by mail.

[0181] In the present embodiment, it must be prohibited to rewrite thesubject or the body text in the automatically-created mail in order toperform the processing correctly.

[0182] As described above, in the data management system according tothe present embodiment, when a mail is sent from the client to thedocument management device for inquiring its folder structure, thedocument management device sends its folder structure to the client bymail in response to the inquiry mail sent from the client. At theclient, a storage folder is designated in the form of a reply to themail sent from the document management device, and a mail is sent to thedocument management device with an attached file. At the documentmanagement device, the attached file is stored in the designated storagefolder in response to the mail sent from the client. Therefore, it ispossible to provide a data management system that allows the user todesignate a file storage location easily.

[0183] Furthermore, at the data management program, its folder structureis sent to the client by mail in response to the inquiry mail sent fromthe client. When a mail in the form of a reply to the mail that has beensent is received from the client with an attached file and with adesignation of a storage folder, the attached file is stored in thedesignated storage folder. Therefore, it is possible to provide a datamanagement program that allows the user to designate a file storagelocation easily.

[0184] In addition, authentication is performed by comparing the clientinformation described in the inquiry mail sent from the client with theclient information as registered. Additionally, when a folder structureis sent to the client by mail, a character string of encryptedinformation indicative of current log-in is sent together, and uponreception of a mail from the client, it is confirmed whether theencrypted character string that has been sent previously is described inthe mail. Therefore, it is possible to provide a data management programwith improved security.

[0185] Although the present invention has been described and illustratedin detail, it is clearly understood that the same is by way ofillustration and example only and is not to be taken by way oflimitation, the spirit and scope of the present invention being limitedonly by the terms of the appended claims.

What is claimed is:
 1. A data management system comprising: a firsttransmission portion sending a mail from a client to a server forinquiring its folder structure; a second transmission portion, at saidserver, transmitting its folder structure to said client by mail inresponse to the inquiry mail sent from said client; a third transmissionportion, at said client, designating a storage folder in the form of areply to the mail sent from said server and sending a mail to saidserver with an attached file; and a storage portion, at said server,storing the attached file in the storage folder as designated, inresponse to the mail sent from said client.
 2. The data managementsystem according to claim 1, wherein said second transmission portionsends its folder structure to the client in text format, and whenreceiving the folder structure in text format, said third transmissionportion designates a storage folder by quoting that text.
 3. The datamanagement system according to claim 1, wherein said second transmissionportion sends its folder structure to the client in HTML format, andwhen receiving the folder structure in HTML format, said thirdtransmission portion designates a storage folder by clicking the storagefolder.
 4. The data management system according to claim 1, wherein saidsecond transmission portion performs authentication by comparing clientinformation described in the inquiry mail sent from the client withclient information as registered, and sends its folder structure by mailonly to the client that is successfully authenticated.
 5. The datamanagement system according to claim 1, wherein said second transmissionportion sends by mail only a folder structure that can be accessed bythe client that is successfully authenticated.
 6. The data managementsystem according to claim 1, wherein said second transmission portionsends together a character string of encrypted information indicative ofcurrent log-in when sending the folder structure to the client by mail.7. The data management system according to claim 6, wherein uponreception of a mail from said client, said storage portion determineswhether the encrypted character string that has been sent previously isdescribed in the mail, and stores the attached file in the designatedstorage folder only when the encrypted character string is described. 8.The data management system according to claim 1, wherein said thirdtransmission portion attaches and sends a plurality of files to onemail.
 9. The data management system according to claim 1, wherein saidthird transmission portion can send a mail in the form that allows aplurality of files to be stored in respective different folders.
 10. Adata management program product causing a computer to execute: a firststep of sending its folder structure to a client by mail in response toan inquiry mail sent from the client; and a second step of storing anattached file in a designated storage folder when a mail is receivedfrom said client with an attached file and with a designation of astorage folder in the form of a reply to the mail sent at said firststep.
 11. The data management program product according to claim 10,wherein, at said first step, authentication is performed by comparingclient information described in the inquiry mail sent from the clientwith client information as registered, and its folder structure is sentby mail only to the client that is successfully authenticated.
 12. Thedata management program product according to claim 11, wherein, at saidfirst step, only a folder structure that can be accessed by the clientthat is successfully authenticated is sent by mail.
 13. The datamanagement program product according to claim 10, wherein, at said firststep, a character string of encrypted information indicative of currentlog-in is sent together when the folder structure is sent to the clientby mail.
 14. The data management program product according to claim 13,wherein, at said second step, upon reception of a mail from said client,it is determined whether the encrypted character string that has beensent previously is described in the mail, and the attached file isstored in the designated storage folder only when the encryptedcharacter string is described.
 15. The data management program productaccording to claim 10, wherein, at said first step, its folder structureis sent to the client in text format.
 16. The data management programproduct according to claim 10, wherein, said first step, its folderstructure is sent to the client in HTML format.
 17. A data managementserver comprising: a transmission portion sending its folder structureto a client by mail in response to an inquiry mail sent from the client;and a storage portion storing an attached file into a designated storagefolder when a mail is received from said client with an attached fileand with a designation of a storage folder in the form of a reply to themail sent by said transmission portion.
 18. The data management serveraccording to claim 17, wherein processing is changed in accordance witha title of a mail sent from the client.
 19. The data management serveraccording to claim 18, wherein its folder structure is sent to theclient only when the title of the mail sent from the client implies aninquiry about the folder structure.
 20. The data management serveraccording to claim 18, wherein the attached file is stored only when thetitle of the mail sent from the client implies storage of the attachedfile.